iT邦幫忙

2025 iThome 鐵人賽

DAY 27
0
佛心分享-SideProject30

最近的工程師真沒用系列 第 27

第二十七天-適合使用在 Svelte 的 Turnstile

  • 分享至 

  • xImage
  •  

昨天的用法我後來發現有個問題,因為我表單實際上沒使用 from,所以原本的方法沒辦法幫我帶 token 進去後端驗證,那怎麼辦呢

撞牆很久發現

+page 其實它是後端就先渲染了,所以要這樣用

import { onMount } from 'svelte';
let container;
let token = '';
onMount(() => {
		turnstile.render(container, {
			sitekey: 'SITE-KEY',
			callback: (t) => {
				console.log('驗證成功', t);
				token = t;
			}
		});
});

<div
	bind:this={container}
	class="cf-turnstile mx-auto"
	data-theme="light"
	data-size="normal"
></div>

我一開始單純在 onMount 使用 window 配 data-callback 很天真的認為那邊成功後,我就直接把資料傳過去後端就好了咩,結果不行,後來才發現 svelte 後端先渲染好,再呈現畫面的,所以你前端這時候改參數,後端是不會知道的,但如果一開始就 bind,他兩邊的值就可以同步變更了

明天來後端驗證吧

今日的情緒抒發:
終於撐到放假了,大家假日要幹嘛捏,有推薦嗎


上一篇
第二十六天-來一份招牌登入 Turnstile 驗證
下一篇
第二十八天-Cloudflare Turnstile 後端驗證
系列文
最近的工程師真沒用28
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言